Full Abstraction in a Subtyped pi-Calculus with Linear Types
نویسندگان
چکیده
We introduce a concise pi-calculus with directed choices and develop a theory of subtyping. Built on a simple behavioural intuition, the calculus offers exact semantic analysis of the extant notions of subtyping in functional programming languages and session-based programming languages. After illustrating the idea of subtyping through examples, we show type-directed embeddings of two known subtyped calculi, one for functions and another for session-based communications. In both cases, the behavioural content of the original subtyping is precisely captured in the fine-grained subtyping theory in the pi-calculus. We then establish full abstraction of these embeddings with respect to their standard semantics, Morris’s contextual congruence in the case of the functional calculus and testing equivalence for the concurrent calculus. For the full abstraction of the embedding of the session-based calculus, we introduce a new proof method centring on non-deterministic computational adequacy and definability. Partially suggested by a technique used by Quaglia and Walker for their full abstraction result, the new proof method extends the framework used in game-based semantics to the May/Must equivalences, giving a uniform proof method for both deterministic and non-deterministic languages.
منابع مشابه
Process Types as a Descriptive Tool for Interaction - Control and the Pi-Calculus
We demonstrate a tight relationship between linearly typed π-calculi and typed λ-calculi by giving a type-preserving translation from the call-by-value λμ-calculus into a typed π-calculus. The λμ-calculus has a particularly simple representation as typed mobile processes. The target calculus is a simple variant of the linear π-calculus. We establish full abstraction up to maximally consistent o...
متن کاملA Fully Abstract Symbolic Semantics for Psi-Calculi
We present a symbolic transition system and bisimulation equivalence for psi-calculi, and show that it is fully abstract with respect to bisimulation congruence in the non-symbolic semantics. A psi-calculus is an extension of the pi-calculus with nominal data types for data structures and for logical assertions representing facts about data. These can be transmitted between processes and their ...
متن کاملComputing strong and weak bisimulations for psi-calculi
We present a symbolic transition system and strong and weak bisimulationequivalences for psi-calculi, and show that they are fully abstract with respectto bisimulation congruences in the non-symbolic semantics. An algorithmwhich computes the most general constraint under which two agents arebisimilar is developed and proved correct.A psi-calculus is an extension of the p...
متن کاملA Linear Account of Session Types in the Pi Calculus
We present a reconstruction of session types in a conventional pi calculus where types are qualified as linear or unrestricted. Linearly typed communication channels are guaranteed to occur in exactly one thread, possibly multiple times. We equip types with a constructor that denotes the two ends of a same communication channel. In order to assess the flexibility of the new type system, we prov...
متن کاملLinearity, session types and the Pi calculus
We present a reconstruction of session types in a conventional pi calculus. Our session types are qualified as linear or unrestricted. Linearly typed communication channels are guaranteed to occur in exactly one thread, possibly multiple times; afterwards they evolve to unrestricted channels. We equip types with a constructor that describes the two ends of a same communication channel, and prop...
متن کامل